package com.gun.management.module.raffle.dal.dataobject.lotteryrecord;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.gun.management.framework.mybatis.core.dataobject.BaseDO;

/**
 * 用户抽奖履历 DO
 *
 * @author 测试账号
 */
@TableName("raffle_lottery_record")
@KeySequence("raffle_lottery_record_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class LotteryRecordDO extends BaseDO {

    /**
     * 编号
     */
    @TableId(value = "id",type=IdType.AUTO)
    private Long id;
    /**
     * 用户id
     */
    private Long userId;
    /**
     * 抽奖id
     */
    private Long lotteryId;
    /**
     * 奖品id
     */
    private Long ruleId;
    /**
     * 总抽奖次数
     */
    private Integer totalTimes;
    /**
     * 总剩余次数
     */
    @TableField(exist = false)
    private Integer leftTimes;
    /**
     * 每人每天总抽奖次数
     */
    private Integer dayTotalTimes;
    /**
     * 当天已剩余次数
     */
    @TableField(exist = false)
    private Integer dayLeftTimes;
    /**
     * 当前已消耗积分
     */
    private Integer expenseScore;
    /**
     * 当前剩余积分
     */
    private Integer leftScore;
    /**
     * 状态(0-未中奖 1-已中奖）
     */
    private Integer status;
    /**
     * 抽奖时间
     */
    private LocalDateTime lotteryTime;

    private Long tenantId;

}